.\"	$OpenBSD: vacation.1,v 1.22 2014/11/15 14:54:12 bentley Exp $
.\"	$NetBSD: vacation.1,v 1.5 1995/08/31 21:57:08 jtc Exp $
.\"
.\" Copyright (c) 1985, 1987, 1990, 1991, 1993
.\"	The Regents of the University of California.  All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. Neither the name of the University nor the names of its contributors
.\"    may be used to endorse or promote products derived from this software
.\"    without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\"	@(#)vacation.1	8.2 (Berkeley) 4/28/95
.\"
.Dd $Mdocdate: November 15 2014 $
.Dt VACATION 1
.Os
.Sh NAME
.Nm vacation
.Nd provide absence notification when receiving email
.Sh SYNOPSIS
.Nm vacation
.Fl i
.Op Fl r Ar interval
.Nm vacation
.Op Fl a Ar alias
.Ar login
.Sh DESCRIPTION
.Nm
returns a message to the sender of a message telling them that you
are currently not reading your mail.
The intended use is in a
.Pa .forward
file.
For example, your
.Pa .forward
file might have:
.Bd -literal -offset indent
\eeric, "|/usr/bin/vacation -a allman eric"
.Ed
.Pp
which would send messages to you (assuming your login name was eric) and
reply to any messages for
.Dq eric
or
.Dq allman .
.Pp
The options are as follows:
.Bl -tag -width Ds
.It Fl a Ar alias
Handle messages for
.Ar alias
in the same manner as those received for the user's
login name.
.It Fl i
Initialize the vacation database files.
It should be used before you modify your
.Pa .forward
file.
.It Fl r Ar interval
Set the reply interval to
.Ar interval
days.
The default is one week.
An interval of
.Dq 0
or
.Dq Li infinite
(actually, any non-numeric character) will never send more than
one reply.
.El
.Pp
Messages will not be replied to
if any of the following conditions are true:
.Bl -dash -offset indent
.It
Message are not
.Dq To:
or
.Dq Cc:
a valid
.Ar login
(or
.Ar alias
supplied using the
.Fl a
option).
.It
Messages are from
.Dq ???-REQUEST ,
.Dq Postmaster ,
.Dq Tn UUCP ,
.Dq MAILER ,
or
.Dq MAILER-DAEMON
(where these strings are case insensitive).
.It
A
.Dq Precedence: bulk ,
.Dq Precedence: list ,
or
.Dq Precedence: junk
line is included in the mail headers.
.It
An
.Dq Auto-Submitted
line is included in the mail headers
with a value of anything but
.Dq no .
.It
A
.Dq List-Id
line (with any value) is included in the mail headers.
.El
.Pp
The people who have sent you messages are maintained as a
.Xr db 3
database in the file
.Pa .vacation.db
in your home directory.
.Pp
.Nm
expects a file
.Pa .vacation.msg ,
in your home directory, containing a message to be sent back to each
sender.
It should be an entire message (including headers).
For example, it might contain:
.Bd -literal -offset indent
From: eric@CS.Berkeley.EDU (Eric Allman)
Subject: I am on vacation
Delivered-By-The-Graces-Of: The Vacation program
Precedence: bulk

I am on vacation until July 22.
If you have something urgent,
please contact Keith Bostic <bostic@CS.Berkeley.EDU>.
--eric
.Ed
.Pp
Any occurrence of the string
.Li $SUBJECT
in
.Pa .vacation.msg
will be replaced by the subject of the message that triggered the
.Nm
program.
.Pp
.Nm
reads the incoming message from standard input, checking the message
headers for either the
.Ux
.Dq From
line or a
.Dq Return-Path
header to determine the sender.
If both are present the sender from the
.Dq Return-Path
header is used.
.Pp
Fatal errors, such as calling
.Nm
with incorrect arguments, or with non-existent
.Ar login Ns Ar s ,
are logged in the system log file, using
.Xr syslog 3 .
.Sh FILES
.Bl -tag -width "vacation.dirxxx" -compact
.It Pa ~/.vacation.db
database file
.It Pa ~/.vacation.msg
message to send
.El
.Sh SEE ALSO
.Xr syslog 3 ,
.Xr smtpd 8
.Sh HISTORY
The
.Nm
command appeared in
.Bx 4.3 .
